<?php
namespace Home\Controller;
use Think\Controller;
use QL\QueryList;

class IndexController extends Controller {
    public function index(){
        //采集某页面所有的图片
        $data = QueryList::Query('http://b2b.11467.com/search/1-3.htm',array(
            //采集规则库
            //'规则名' => array('jQuery选择器','要采集的属性'),
            'title' => array('h4','text'),
            'zhuying' => array('.f_l ','html','-span -h4 -div:eq(1) -div:eq(2) -div:eq(3) '),
            'dizhi' => array('.f_l ','html','-span -h4 -div:eq(0) -div:eq() -div:eq(2) '),
            'zhuce' => array('.f_l ','html','-span -h4 -div:eq(0) -div:eq(1) -div:eq() '),
        ))->data;
//打印结果
//        print_r($data);
        $count = count($data);
        for($i = 0; $i < $count; $i++ ){
            print_r($data[$i]['title'].'<br>');
            print_r($data[$i]['zhuying']);
            print_r($data[$i]['dizhi']);
            print_r($data[$i]['zhuce']);
            print_r("<hr>");
        }

    }

    public function shijiegongchang(){
        set_time_limit(0);
//        echo "test";
        //爬地址
        $data = QueryList::Query('https://company.gongchang.com/',array(
            //采集规则库
            //'规则名' => array('jQuery选择器','要采集的属性'),
            'href' => array('.unit-cate:last li a ','href'),
            'title' => array('.unit-cate:last li a ','title'),
        ))->data;
        $diqucount = count($data);
        //获取的是第一页的
//        $page2 = "https://company.gongchang.com/p-440000/p_2.html";


  for($d = 0;$d<$diqucount;$d++){
//      for ($q = 0; $q <10 ;$q++){

      for($li = 0;$li<10;$li++){
          $url = "http:".$data[$d]['href'];
          $datas = QueryList::Query($url.'p_'.$li.'.html',array(
              //采集规则库
              //'规则名' => array('jQuery选择器','要采集的属性'),
              'title' => array('.cl-tit a','text'),
              'zhucehao' => array('.l6-val td','text'),
              'faren' => array('.list6','text','-li:eq(0) -li:eq(2) -li:eq(3) -li:eq(4)'),
          ))->data;
          $datascount = count($datas);
          for($i = 0;$i<$datascount;$i++){
              print_r($datas[$i]['title']."<br>");
              print_r($datas[$i]['zhucehao']."<br>");
              print_r($datas[$i]['faren']."<hr>");
      }


//      }


      }
      echo "采集结束"; print_r($datascount);


  }

    }

    public function duoxiancheng(){

        //获取的是地方的href

        //        echo "test";
        //爬地址
        $data = QueryList::Query('https://company.gongchang.com/',array(
            //采集规则库
            //'规则名' => array('jQuery选择器','要采集的属性'),
            'href' => array('.unit-cate:last li a ','href'),
            'title' => array('.unit-cate:last li a ','title'),
//            'zhuying' => array('.f_l ','html','-span -h4 -div:eq(1) -div:eq(2) -div:eq(3) '),
//            'dizhi' => array('.f_l ','html','-span -h4 -div:eq(0) -div:eq() -div:eq(2) '),
//            'zhuce' => array('.f_l ','html','-span -h4 -div:eq(0) -div:eq(1) -div:eq() '),
        ))->data;
        $diqucount = count($data);
        //获取的是第一页的
//        $page2 = "https://company.gongchang.com/p-440000/p_2.html";
        print_r($data[1]['href']);

        for($d = 0;$d<$diqucount;$d++){
//      for ($q = 0; $q <10 ;$q++){
            $datas = QueryList::Query('http:'.$data[$d]['href'].'p_3.html',array(
                //采集规则库
                //'规则名' => array('jQuery选择器','要采集的属性'),
                'title' => array('.cl-tit a','text'),
                'zhucehao' => array('.l6-val td','text'),
                'faren' => array('.list6','text','-li:eq(0) -li:eq(2) -li:eq(3) -li:eq(4)'),
            ))->data;

//      }

            $datascount = count($datas);
            for($i = 0;$i<$datascount;$i++){
                print_r($datas[$i]['title']."<br>");
                print_r($datas[$i]['zhucehao']."<br>");
                print_r($datas[$i]['faren']."<hr>");
            }

        }



//下面采取多线程采集企业的信息
        QueryList::run('Multi',[

            //待采集链接集合
            'list' => [

//                    'http://cms.querylist.cc/news/it/547.html',

                //更多的采集链接....
            ],
            'curl' => [
                'opt' => array(
                    //这里根据自身需求设置curl参数
                    CURLOPT_SSL_VERIFYPEER => false,
                    CURLOPT_SSL_VERIFYHOST => false,
                    CURLOPT_FOLLOWLOCATION => true,
                    CURLOPT_AUTOREFERER => true,
                    //........
                ),
                //设置线程数
                'maxThread' => 100,
                //设置最大尝试数
                'maxTry' => 3
            ],
            'success' => function($a){
                //采集规则
                $reg = array(
                    //采集文章标题
                    'title' => array('h1','text'),
                    //采集文章正文内容,利用过滤功能去掉文章中的超链接，但保留超链接的文字，并去掉版权、JS代码等无用信息
                    'content' => array('.post_content','html','a -.content_copyright -script' )
                );
                $rang = '.content';
                $ql = QueryList::Query($a['content'],$reg,$rang);
                $data = $ql->getData();
                //打印结果，实际操作中这里应该做入数据库操作
                print_r($data);
            }
        ]);
    }

    public function  digui(){
//        $html = "http://blog.csdn.net/qq_22823581/article/list/1";
        $html ="https://company.gongchang.com/p-320000/p_2.html";
//        $data = QueryList::Query($html,array(
//            'href'=>array('.list_c_t a','href','',function($url){
//                $baseurl = "blog.csdn.net/";
//                return $baseurl.$url;
//            }),))->getData(function ($content){
//            $con['content']=QueryList::Query('http://www.baidu.com',array(
//                'content'=>array('img','src'),
//            ))->data;
//            return $con;
//        });
//
        $data = QueryList::Query($html,array(
            'href' => array('.cl-tit a','href'),
        ))->getData(function($item){
            $item['content'] = QueryList::Query('http://www.baidu.com',array(
                'item' => array('a','text')
            ))->data;
            return $item;
        });

//        print_r($data);
        print_r($data);

    }
    public function pachong(){
        for($li = 0;$li<10;$li++){
            $url = "https://company.gongchang.com/p-440000/";
            $datas = QueryList::Query($url.'p_'.$li.'.html',array(
                //采集规则库
                //'规则名' => array('jQuery选择器','要采集的属性'),
                'title' => array('.cl-tit a','text'),
                'zhucehao' => array('.l6-val td','text'),
                'faren' => array('.list6','text','-li:eq(0) -li:eq(2) -li:eq(3) -li:eq(4)'),
            ))->data;
            print_r($datas);
            print_r("<hr>");
        }


}
    public function today(){

        $datas = QueryList::Query('http://www.lssdjt.com/',array(
            //采集规则库
            //'规则名' => array('jQuery选择器','要采集的属性'),
            'href' => array('.gong a','href'),
        ))->data;
        $datacount = count($datas);
//        dump($datas);
        for($i=0 ;$i <=$datacount;$i++ ){
            $content = QueryList::Query($datas[$i]['href'],array(
                //采集规则库
                //'规则名' => array('jQuery选择器','要采集的属性'),
                'title'=>array('h1','text'),
                'content' => array('.post_public','text'),
            ))->data;
            dump($content);
        }
    }
}